﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.ConstrainedExecution;
using System.Runtime.Serialization;
using System.Text;

namespace Ocean.His.MedicalInsurance
{
    [DataContract]
    public class SI1317Data
    {

        /// <summary>
        /// 查询时间点
        /// 
        /// </summary>
        [DataMember(Name = "query_date")]
        public string QueryDate { get; set; }

        /// <summary>
        /// 定点医药机构编号
        /// 
        /// </summary>
        [DataMember(Name = "fixmedins_code")]
        public string FixmedinsCode { get; set; }

        /// <summary>
        /// 定点医药机构目录编号
        /// 
        /// </summary>
        [DataMember(Name = "medins_list_codg")]
        public string MedinsListCodg { get; set; }

        /// <summary>
        /// 定点医药机构目录名称
        /// 
        /// </summary>
        [DataMember(Name = "medins_list_name")]
        public string MedinsListName { get; set; }

        /// <summary>
        /// 参保机构医保区划
        /// 
        /// </summary>
        [DataMember(Name = "insu_admdvs")]
        public string InsuAdmdvs { get; set; }

        /// <summary>
        /// 目录类别
        /// 
        /// </summary>
        [DataMember(Name = "list_type")]
        public string ListType { get; set; }

        /// <summary>
        /// 医疗目录编码
        /// 
        /// </summary>
        [DataMember(Name = "med_list_codg")]
        public string MedListCodg { get; set; }

        /// <summary>
        /// 开始日期
        /// 
        /// </summary>
        [DataMember(Name = "begndate")]
        public string Begndate { get; set; }

        /// <summary>
        /// 有效标志
        /// 
        /// </summary>
        [DataMember(Name = "vali_flag")]
        public string ValiFlag { get; set; }

        /// <summary>
        /// 
        /// Y
        /// </summary>
        [DataMember(Name = "updt_time")]
        public string UpdtTime { get; set; }

        /// <summary>
        /// 
        /// Y
        /// </summary>
        [DataMember(Name = "page_num")]
        public string PageNum { get; set; }

        /// <summary>
        /// 
        /// Y
        /// </summary>
        [DataMember(Name = "page_size")]
        public string PageSize { get; set; }

    }

    [DataContract]
    public class SI1317InputModel
    {
        [DataMember(Name = "data")]
        public SI1317Data SI1317Data { get; set; }

        public SI1317InputModel(SI1317Data si1317Data)
        {
            SI1317Data = si1317Data;
        }
    }

    /// <summary>
    /// 1317
    /// 医保目录信息查询
    /// </summary>
    [DataContract]
    public class SI1317RequestModel : SIBaseRequestModel
    {
        public SI1317RequestModel(MedicalInsuranceOption medicalInsuranceOption, SI1317Data si1317Data) : base(medicalInsuranceOption)
        {
            Infno = "1317";
            Input = new SI1317InputModel(si1317Data);
        }

        /// <summary>
        /// 交易输入
        /// </summary>
        [DataMember(Name = "input")]
        public SI1317InputModel Input { get; set; }
    }
}
